package cn.faster.sys.service;

import cn.faster.sys.entity.SysMenu;
import cn.faster.sys.vo.SysMenuVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 用户权限表 服务类
 * </p>
 *
 * @author xiaoCoder
 * @since 2021-06-10
 */

public interface SysMenuService extends IService<SysMenu>{

    /**
	* 根据id查询Menu
	*/

	SysMenu getMenuById(Long id) throws Exception;

	/**
	* 查询Menu列表
	*/
    List<SysMenu> listMenu(Map<String, Object> map) throws Exception;


    /**
	* 新增Menu
	*/
	Integer addMenu(SysMenu sysMenu) throws Exception;

	/**
	* 更新Menu
	*/
	Integer updateMenu(SysMenu sysMenu) throws Exception;

	/**
	* 根据id物理删除Menu
	*/
	Integer deleteMenuById(Integer id)	throws Exception;

	/**
	* 根据id逻辑删除Menu
	*/
	Integer removeMenuById(Integer id)	throws Exception;

	/* *
	 * @description: 根据角色 获取所有的 Menus
	 * @author xiaoCoder
	 * @date: 2021/8/19 14:52
	 * @param: []
	 * @return: java.lang.Object
	 */
    //List<SysMenu> findAllMenus() throws Exception;


	public List<SysMenu> listWithTree() ;
}
